#include <bits/stdc++.h>
using namespace std;
struct car{
    int d;
    int v;
    int a;
};
struct g{
    double left;
    double right;
};
bool vis[3005];
int n,k;
void dfs(int num, int cnt){
    if(n-num<k-cnt){
        return ;
    }
    if(k==cnt){
        for(int i=0;i<n;i++){
            if(vis[i]){
                cout << i+1 << " ";
            }
        }
        cout << "\n";
        return ;
    }
    vis[num] = true;
    dfs(num+1, cnt+1);
    vis[num] = false;
    dfs(num+1, cnt);
}
int main(){
    int t;
    cin >> n >> k;
    /*
    cin >> t;
    while(t!=0){
        int m,l,v;
        cin >> n >> m >> l >> v;
        car c[n];
        bool islimit[n];
        for(int i=0;i<n;i++){
            cin >> c[i].d >> c[i].v >> c[i].a;
            islimit[i] = false;
        }
        int p[n];
        for(int i=0;i<n;i++){
            cin >> p[i];
        }
        int cnt = 0;
        vector <g> vec;
        for(int i=0;i<n;i++){//calc
            double li = c[i].d;
            if(c[i].a!=0){
                double r;
                if(c[i].a<0){
                    r = li+(v*v-c[i].v*c[i].v)/(2*c[i].a);
                }
                else{
                    li = li+(v*v-c[i].v*c[i].v)/(2*c[i].a);
                    r = l;
                }
                for(int j=0;j<n;j++){
                    if(p[j]>=li&&p[j]<r){
                        islimit[i] = true;
                        g nxt;
                        nxt.left = li;
                        nxt.right = r;
                        vec.push_back(nxt);
                        //cout << li << " " << r << "\n";
                        cnt++;
                        break;
                    }
                }
            }
            else{
                if(c[i].v>v){
                    for(int j=0;j<n;j++){
                        if(p[j]>=c[i].d){
                            islimit[i] = true;
                            cnt++;
                            break;
                        }
                    }
                }
            }
        }
        int ans = 0;
        t--;
    }
    */
    dfs(0, 0);
    return 0;
}
